var dataFile = {success: false};
$(function() {
    $('#btn_upload_action,#btn_upload_change').click(function() {
        if (dataFile.success) {
            $('#logo_imagen').click();
        }
        else {
            $('#logo_imagen').click();
        }

        return false;
    });
    //ation load
    $("#logo_imagen").change(function() {
        var file = $("#logo_imagen")[0].files[0];
        if (file) {
            var fileName = file.name;
            var fileExtension = fileName.substring(fileName.lastIndexOf('.') + 1);
            if (file && isImage(fileExtension)) {
                mostrarImagen(this, "#img_prev");
                upload({
                    successCall: function(data) {
                        if (dataFile.success) {
//                            deleted({delete_url: dataFile.data.delete_url});
//                            $("#url_archivo").val('');
                            $("#TPersona_per_foto").val(data.data.name);
                        }
                        $("#TPersona_per_foto").val(data.data.name);
//                        $("#url_archivo").val();
                        if ($("#content_prev").attr('hidden')) {
                            $("#content_prev").toggle(200, function() {
                                $("#content_action").toggle(200);
                                $("#content_prev").removeAttr('hidden');
                            });
                        }
                    }
                });
            }
            else {
                $("#TPersona_per_foto").val(null);

                bootbox.alert('El archivo seleccionado no es una imagen');
            }
        }
    });

});

function AjaxCargarListas(url, data, callBack) {
    $.ajax({
        url: url,
        type: 'POST',
        data: data,
        success: function(data) {
            callBack(data);
        }
    });
}

/************* Upload archivo ****************/
/**
 * previsualización de la imagen
 * @param input
 */
function mostrarImagen(input, prev_id) {
    if (input.files && input.files[0]) {
        var reader = new FileReader();
        reader.onload = function(e) {
            $(prev_id).attr('src', e.target.result);
        }
        reader.readAsDataURL(input.files[0]);
    }
}
function isImage(extension) {
    switch (extension.toLowerCase()) {
        case 'jpg':
        case 'gif':
        case 'png':
        case 'jpeg':
            return true;
            break;
        default:
            return false;
            break;
    }
}
function deleted(options) {
    $.ajax({
        url: options.delete_url,
        success: function(data) {
            if (data.success) {
                if (options.successCall)
                    options.successCall(data);
            }
            else {
                if (options.successCall)
                    options.errorCall(data);
            }
        }
    });
}
function upload(options) {
    //información del formulario
    var inputFileImage = document.getElementById('logo_imagen');
    if (inputFileImage.files[0]) {
        var file = inputFileImage.files[0];
        var formData = new FormData();
        formData.append('file', file);
        //hacemos la petición ajax
        $.ajax({
            url: baseUrl + 'usuarios/tPersona/ajaxUploadTemp',
            type: 'POST',
            dataType: 'json',
            // Form data
            //datos del formulario
            data: formData,
            //necesario para subir archivos via ajax
            cache: false,
            contentType: false,
            processData: false,
            //una vez finalizado correctamente
            success: function(data) {
                var json = data;
                if (options.successCall)
                    options.successCall(json);
                dataFile = json;
            },
            //si ha ocurrido un error
            error: function() {
            }
        });
    }
}